package edu.moravian.UI;

import edu.moravian.math.Point2D;
import edu.moravian.world.World2D;
import edu.moravian.world.WorldDescriptor;

/**
 *
 * @author ronaghan
 */
public abstract class GameView
{

    protected WorldDescriptor boundsDescriptor;

    protected GameView(WorldDescriptor boundsDescriptor)
    {
        this.boundsDescriptor = boundsDescriptor;
    }

    public abstract void draw(World2D w2d);

    public abstract void handleMouseClick(Point2D location);

    public abstract void handleMouseMoved(Point2D location);
    
    public boolean inBounds(Point2D location)
    {
        return boundsDescriptor.inWorld(location);
    }
}
